<?php
	
/*
 * Modelo: "empleados.php"
 *
 * Realizado por:
 * 	Carlos Calvo.
 */
 
	@include_once('sybasebd.php');
	@include_once('auditoria.php');
	
	class Empleados {
					
		// Variables del Modelo
		var $cedula;
		var $rif;
		var $nombre;
		var $apellido;
		var $domicilio;
		var $telefono;
		var $celular;
		var $fecha_registro;				
		var $respuesta;
		
		
		//	FUNCION - VERIFICAR EMPLEADO
		// =================================================================================================================
		function verificar_empleado( $cedula ) {		
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select cedula as cedula 
					from empleado 
					where cedula = ".$cedula;
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar el Empleado.");
			$this->respuesta = $conexion->fetch_array_BD();
			
			$conexion->desconectar_BD;			
			if ( $this->respuesta[cedula] != "" ) {				
				return false;					// Si Existe
			} else {		
				return true;					// Si no Existe
			}
		}
		
		
		//	FUNCION - INSERTAR EMPLEADO
		// =================================================================================================================
		
		function insertar( $cedula, $rif, $nombre, $apellido, $domicilio, $telefono, $celular, $fecha_registro ) {			
			$ocurrencia = $this->verificar_empleado( $cedula );
			
			if ( $ocurrencia == true ) {						
				$conexion = new Sybasebd;
				$var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
							
				$sql = "insert into empleado (cedula, rif, nombre, apellido, domicilio, telefono, celular, fecha_registro) values (";
				
				$sql = $sql.$cedula.", ";
				$sql = $sql."'".strtoupper($rif)."', "; 
				$sql = $sql."'".strtoupper($nombre)."', "; 
				$sql = $sql."'".strtoupper($apellido)."', ";  
				$sql = $sql."'".strtoupper($domicilio)."', "; 
				$sql = $sql."'".strtoupper($telefono)."', ";
				$sql = $sql."'".strtoupper($celular)."', ";
				$sql = $sql."'".$fecha_registro."')";
								
				//echo "<br>SQL: ".$sql."<br>";
				$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo agregar el Empleado ".$cedula.".");
												
				// Registro de Auditoria
				$auditoria 	= new Auditorias;
				$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "7" );
							
				$conexion->desconectar_BD;												
				return true;
			} else {
				return false;
			}
		}
		
		
		//	FUNCION - MODIFICAR EMPLEADO
		// =================================================================================================================
				
		function modificar( $cedula, $rif, $domicilio, $telefono, $celular ) {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "update empleado set 
						rif = '".strtoupper($rif)."',  
						domicilio = '".strtoupper($domicilio)."',
						telefono = '".strtoupper($telefono)."',
						celular = '".strtoupper($celular)."'
					where cedula = ".$cedula;
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo modificar el Empleado ".$cedula.".");
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "8" );
						
			$conexion->desconectar_BD;			
			return true;
		}
		
		
		//	FUNCION - CONSULTAR TODOS LOS EMPLEADOS
		// =================================================================================================================
		
		function consultar() {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select cedula as cedula, 
						rif as rif, 
						nombre as nombre, 
						apellido as apellido, 
						domicilio as domicilio, 
						telefono as telefono, 
						celular as celular,
						fecha_registro as fecha_registro
					from empleado
					order by cedula";
									
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar los Empleados.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_empleados[$i][0] = $this->respuesta[cedula];
				$lista_empleados[$i][1] = $this->respuesta[rif];	
				$lista_empleados[$i][2] = $this->respuesta[nombre];
				$lista_empleados[$i][3] = $this->respuesta[apellido];		
				$lista_empleados[$i][4] = $this->respuesta[domicilio];
				$lista_empleados[$i][5] = $this->respuesta[telefono];
				$lista_empleados[$i][6] = $this->respuesta[celular];
				$lista_empleados[$i][7] = $this->respuesta[fecha_registro];		
				$i++;
			}
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "9" );
			
			$conexion->desconectar_BD;
			return $lista_empleados;
		}
		
		
		//	FUNCION - ELIMINAR EMPLEADO
		// =================================================================================================================
				
		function eliminar( $cedula ) {			
			$conexion = new Sybasebd;
			$var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "delete from empleado 
					where cedula = ".$cedula;
															
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo Eliminar el Empleado ".$cedula.".");
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "10" );
			
			$conexion->desconectar_BD;		
			return true;
		}
					
		
		//	FUNCION - CONSULTAR UN EMPLEADO
		// =================================================================================================================
		
		function consultar_empleado( $cedula ) {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
									
			$sql = "select cedula as cedula, 
						rif as rif, 
						nombre as nombre, 
						apellido as apellido, 
						domicilio as domicilio, 
						telefono as telefono,
						celular as celular,
						fecha_registro as fecha_registro
					from empleado
					where cedula = ".$cedula;
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar el Empleado ".$cedula.".");			
			$this->respuesta = $conexion->fetch_array_BD();
				$info_empleado[0] = $this->respuesta[cedula];
				$info_empleado[1] = $this->respuesta[rif];	
				$info_empleado[2] = $this->respuesta[nombre];
				$info_empleado[3] = $this->respuesta[apellido];		
				$info_empleado[4] = $this->respuesta[domicilio];
				$info_empleado[5] = $this->respuesta[telefono];
				$info_empleado[6] = $this->respuesta[celular];
				$info_empleado[7] = $this->respuesta[fecha_registro];
			
			$conexion->desconectar_BD;			
			return $info_empleado;
		}
		
		
		//	FUNCION - CONSULTAR CEDULA DE LOS EMPLEADOS
		// =================================================================================================================
		
		function consultar_cedula() {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select cedula as cedula, 
						nombre as nombre, 
						apellido as apellido
					from empleado
					order by nombre";
									
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar las cedulas de los Empleados.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_cedulas[$i][0] = $this->respuesta[cedula];	
				$lista_cedulas[$i][1] = $this->respuesta[nombre];
				$lista_cedulas[$i][2] = $this->respuesta[apellido];		
				$i++;
			}
			
			$conexion->desconectar_BD;
			return $lista_cedulas;
		}
		
		
		//	FUNCION - CONSULTAR EMPLEADOS PARA ELIMINAR
		// =================================================================================================================
		
		function consultar_eliminar() {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select cedula as cedula,
						nombre as nombre,
						apellido as apellido 
					from empleado 
					where cedula not in ( 
							select id_proveedor 
							from registro_entrada ) ";
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar los Empleados para Eliminar.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_eliminar[$i][0] = $this->respuesta[cedula];
				$lista_eliminar[$i][1] = $this->respuesta[nombre];
				$lista_eliminar[$i][2] = $this->respuesta[apellido];		
				$i++;
			}				
			
			$conexion->desconectar_BD;			
			return $lista_eliminar;
		}		
	}
?>